// Defining number of columns in the grid.
// Common Values would be 12, 16 or 24
@width:960px;  
@def_grid:16;
                                      
.container(){    
	clear:both;
  margin:0 auto;
  width:@width;
}         
                                      
// Works out the width of elements based
// on total number of columns and width
// number of columns being displayed.
// Removes 20px for margins
.grid(@grid:@def_grid,@cols:'',@float:left,@display:inline){  
  display:@display;
  float:@float;
  margin:0 10px;
  width:(@width/@grid * @cols)-20;   
}      

// Allows for padding before element
.prefix(@grid:@def_grid,@cols:''){  
  padding-left:(@width/@grid * @cols);
}    
// Allows for padding after element
.suffix(@grid:@def_grid,@cols:''){  
  padding-right:(@width/@grid * @cols);          
}        
// Removes left margin
.alpha(){
  margin-left:0;
}                     
// Removes right margin
.omega(){
  margin-right:0;
}   

.push(@grid:@def_grid,@move:'') {
  position:relative;
  left:(@width/@grid * @move);
} 
   
.pull(@grid:@def_grid,@move:'') {
  position:relative;
  left:(@width/@grid * @move) * -1;
}